﻿using System;
using System.Runtime.InteropServices;
using System.Text;

namespace Valve.VR
{
	// Token: 0x0200052E RID: 1326
	public class CVRSettings
	{
		// Token: 0x06001C82 RID: 7298 RVA: 0x00011F56 File Offset: 0x00010156
		internal CVRSettings(IntPtr pInterface)
		{
			this.FnTable = (IVRSettings)Marshal.PtrToStructure(pInterface, typeof(IVRSettings));
		}

		// Token: 0x06001C83 RID: 7299 RVA: 0x00060BDC File Offset: 0x0005EDDC
		public string GetSettingsErrorNameFromEnum(EVRSettingsError eError)
		{
			IntPtr ptr = this.FnTable.GetSettingsErrorNameFromEnum(eError);
			return Marshal.PtrToStringAnsi(ptr);
		}

		// Token: 0x06001C84 RID: 7300 RVA: 0x00060C04 File Offset: 0x0005EE04
		public bool Sync(bool bForce, ref EVRSettingsError peError)
		{
			return this.FnTable.Sync(bForce, ref peError);
		}

		// Token: 0x06001C85 RID: 7301 RVA: 0x00060C28 File Offset: 0x0005EE28
		public bool GetBool(string pchSection, string pchSettingsKey, bool bDefaultValue, ref EVRSettingsError peError)
		{
			return this.FnTable.GetBool(pchSection, pchSettingsKey, bDefaultValue, ref peError);
		}

		// Token: 0x06001C86 RID: 7302 RVA: 0x00011F79 File Offset: 0x00010179
		public void SetBool(string pchSection, string pchSettingsKey, bool bValue, ref EVRSettingsError peError)
		{
			this.FnTable.SetBool(pchSection, pchSettingsKey, bValue, ref peError);
		}

		// Token: 0x06001C87 RID: 7303 RVA: 0x00060C4C File Offset: 0x0005EE4C
		public int GetInt32(string pchSection, string pchSettingsKey, int nDefaultValue, ref EVRSettingsError peError)
		{
			return this.FnTable.GetInt32(pchSection, pchSettingsKey, nDefaultValue, ref peError);
		}

		// Token: 0x06001C88 RID: 7304 RVA: 0x00011F90 File Offset: 0x00010190
		public void SetInt32(string pchSection, string pchSettingsKey, int nValue, ref EVRSettingsError peError)
		{
			this.FnTable.SetInt32(pchSection, pchSettingsKey, nValue, ref peError);
		}

		// Token: 0x06001C89 RID: 7305 RVA: 0x00060C70 File Offset: 0x0005EE70
		public float GetFloat(string pchSection, string pchSettingsKey, float flDefaultValue, ref EVRSettingsError peError)
		{
			return this.FnTable.GetFloat(pchSection, pchSettingsKey, flDefaultValue, ref peError);
		}

		// Token: 0x06001C8A RID: 7306 RVA: 0x00011FA7 File Offset: 0x000101A7
		public void SetFloat(string pchSection, string pchSettingsKey, float flValue, ref EVRSettingsError peError)
		{
			this.FnTable.SetFloat(pchSection, pchSettingsKey, flValue, ref peError);
		}

		// Token: 0x06001C8B RID: 7307 RVA: 0x00011FBE File Offset: 0x000101BE
		public void GetString(string pchSection, string pchSettingsKey, StringBuilder pchValue, uint unValueLen, string pchDefaultValue, ref EVRSettingsError peError)
		{
			this.FnTable.GetString(pchSection, pchSettingsKey, pchValue, unValueLen, pchDefaultValue, ref peError);
		}

		// Token: 0x06001C8C RID: 7308 RVA: 0x00011FD9 File Offset: 0x000101D9
		public void SetString(string pchSection, string pchSettingsKey, string pchValue, ref EVRSettingsError peError)
		{
			this.FnTable.SetString(pchSection, pchSettingsKey, pchValue, ref peError);
		}

		// Token: 0x06001C8D RID: 7309 RVA: 0x00011FF0 File Offset: 0x000101F0
		public void RemoveSection(string pchSection, ref EVRSettingsError peError)
		{
			this.FnTable.RemoveSection(pchSection, ref peError);
		}

		// Token: 0x06001C8E RID: 7310 RVA: 0x00012004 File Offset: 0x00010204
		public void RemoveKeyInSection(string pchSection, string pchSettingsKey, ref EVRSettingsError peError)
		{
			this.FnTable.RemoveKeyInSection(pchSection, pchSettingsKey, ref peError);
		}

		// Token: 0x040010FB RID: 4347
		public IVRSettings FnTable;
	}
}
